package com.tangsm.spring.boot.validation.enums;

/**
 * 响应码枚举
 * <p>0000 表示请求成功</p>
 * <p>1000 表示请求失败</p>
 * <p>2000～2999 区间表示参数错误</p>
 * <p>3000～3999 区间表示客户端错误</p>
 * <p>4000～4999 区间表示服务端异常</p>
 *
 * @author tangsm
 */
public enum ResultStatus {

    /**
     * 成功
     */
    SUCCESS("0000", "成功"),

    /**
     * 失败
     */
    FAILURE("1000", "失败"),

    /**
     * 参数校验失败
     */
    PARAM_FAILED("2000", "参数校验失败"),

    /**
     * 客户端请求错误
     */
    CLIENT_ERROR("3000", "客户端请求错误"),

    /**
     * 服务端系统异常
     */
    SERVER_ERROR("4000", "服务端系统异常"),

    /**
     * Test自定义异常
     */
    TEST_ERROR("4010", "Test自定义异常");

    private String code;
    private String msg;

    ResultStatus(String code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public String getMsg() {
        return msg;
    }
}
